//: version "1.6i" module main; //: root_module supply0 w14; //: /sn:0 /dp:1 {0}(273,384)(273,414){1} supply0 w0; //: /sn:0 {0}(402,149)(402,89)(337,89){1} //: {2}(333,89)(297,89){3} //: {4}(295,87)(295,15)(326,15)(326,25){5} //: {6}(293,89)(264,89){7} //: {8}(260,89)(191,89)(191,149){9} //: {10}(262,91)(262,149){11} //: {12}(335,91)(335,149){13} wire w6; //: /sn:0 {0}(222,-14)(222,42)(234,42)(234,164){1} //: {2}(236,166)(240,166)(240,165)(241,165){3} //: {4}(234,168)(234,313)(363,313)(363,352){5} wire w7; //: /sn:0 {0}(251,-13)(251,48)(302,48)(302,163){1} //: {2}(304,165)(314,165){3} //: {4}(302,167)(302,307)(379,307)(379,352){5} wire Q4; //: {0}(273,170)(283,170){1} wire w15; //: /sn:0 {0}(62,211)(62,233)(107,233){1} //: {2}(111,233)(186,233)(186,208){3} //: {4}(188,206)(255,206){5} //: {6}(259,206)(328,206){7} //: {8}(332,206)(397,206)(397,181){9} //: {10}(330,204)(330,181){11} //: {12}(257,204)(257,181){13} //: {14}(186,204)(186,181){15} //: {16}(109,231)(109,221)(108,221)(108,31){17} wire w3; //: /sn:0 {0}(-51,237)(29,237)(29,198)(39,198){1} wire D0; //: /sn:0 {0}(170,165)(153,165){1} //: {2}(151,163)(151,46)(197,46)(197,-14){3} //: {4}(151,167)(151,321)(337,321)(337,352){5} wire w1; //: /sn:0 {0}(86,75)(179,75){1} //: {2}(183,75)(250,75){3} //: {4}(254,75)(323,75){5} //: {6}(327,75)(392,75)(392,149){7} //: {8}(325,77)(325,149){9} //: {10}(252,77)(252,149){11} //: {12}(181,77)(181,149){13} wire Q1; //: {0}(212,372)(164,372)(164,251)(219,251)(219,162){1} //: {2}(219,158)(219,99)(475,99)(475,55){3} //: {4}(217,160)(202,160){5} wire w8; //: /sn:0 {0}(273,160)(286,160){1} //: {2}(288,158)(288,106)(500,106)(500,55){3} //: {4}(288,162)(288,257)(174,257)(174,362)(212,362){5} wire w18; //: /sn:0 {0}(413,160)(438,160){1} //: {2}(442,160)(554,160)(554,56){3} //: {4}(440,162)(440,274)(192,274)(192,342)(212,342){5} wire [3:0] w17; //: /sn:0 {0}(218,357)(255,357){1} wire Q3; //: {0}(413,170)(420,170){1} wire w12; //: /sn:0 /dp:1 {0}(52,182)(52,166)(-51,166){1} wire w11; //: /sn:0 /dp:1 {0}(346,160)(354,160){1} //: {2}(356,158)(356,117)(529,117)(529,56){3} //: {4}(356,162)(356,265)(181,265)(181,352)(212,352){5} wire w2; //: /sn:0 {0}(211,170)(202,170){1} wire w10; //: /sn:0 {0}(-5,110)(72,110)(72,182){1} wire Q2; //: /dp:1 {0}(346,170)(357,170){1} wire w13; //: /sn:0 {0}(276,-13)(276,42)(370,42)(370,163){1} //: {2}(372,165)(381,165){3} //: {4}(370,167)(370,302)(404,302)(404,352){5} wire [3:0] w9; //: /sn:0 {0}(290,357)(336,357){1} //: {2}(337,357)(362,357){3} //: {4}(363,357)(378,357){5} //: {6}(379,357)(403,357){7} //: {8}(404,357)(440,357){9} //: enddecls //: supply0 g8 (w14) @(273,420) /sn:0 /w:[ 1 ] //: joint g4 (w0) @(295, 89) /w:[ 3 4 6 -1 ] tran g13(.Z(w7), .I(w9[2])); //: @(379,355) /sn:0 /R:1 /w:[ 5 5 6 ] /ss:0 ff g3 (.Q(w18), ._Q(Q3), .D(w13), .EN(w0), .CLR(w1), .CK(w15)); //: @(397,165) /sn:0 /w:[ 0 0 3 0 7 9 ] //: comment g51 /dolink:0 /link:"" @(478,172) /sn:0 //: /line:"T d0 q0 d1 q1 d2 q2 d3 q3" //: /line:"0 1 0 0 0 0 0 0 0" //: /line:"1 0 1 1 0 0 0 0 0" //: /line:"2 1 0 1 1 0 0 0 0" //: /line:"3 0 1 0 1 1 0 0 0" //: /line:"4 1 0 0 0 1 1 0 0" //: /line:"5 0 1 1 0 1 1 0 0" //: /line:"6 1 0 1 1 1 1 0 0" //: /line:"7 0 1 0 1 0 1 1 0" //: /line:"8 1 0 0 0 0 0 1 1" //: /line:"9 0 1 1 0 0 0 1 1" //: /line:"10 1 0 1 1 0 0 1 1" //: /line:"11 0 1 0 1 1 0 1 1" //: /line:"12 1 0 0 0 1 1 1 1" //: /line:"13 0 1 1 0 1 1 1 1" //: /line:"14 1 0 1 1 1 1 1 1" //: /line:"15 0 1 0 1 0 1 0 1 " //: /line:"16 1 0 0 0 0 0 0 0 " //: /end //: joint g34 (D0) @(151, 165) /w:[ 1 2 -1 4 ] //: joint g37 (w13) @(370, 165) /w:[ 2 1 -1 4 ] ff g2 (.Q(w11), ._Q(Q2), .D(w7), .EN(w0), .CLR(w1), .CK(w15)); //: @(330,165) /sn:0 /w:[ 0 0 3 13 9 11 ] ff g1 (.Q(w8), ._Q(Q4), .D(w6), .EN(w0), .CLR(w1), .CK(w15)); //: @(257,165) /sn:0 /w:[ 0 0 3 11 11 13 ] tran g11(.Z(w6), .I(w9[1])); //: @(363,355) /sn:0 /R:1 /w:[ 5 3 4 ] /ss:0 led g16 (.I(w8)); //: @(500,48) /sn:0 /w:[ 3 ] /type:0 tran g10(.Z(D0), .I(w9[0])); //: @(337,355) /sn:0 /R:1 /w:[ 5 1 2 ] /ss:0 //: joint g28 (w1) @(181, 75) /w:[ 2 -1 1 12 ] //: joint g50 (w1) @(325, 75) /w:[ 6 -1 5 8 ] //: joint g27 (w15) @(330, 206) /w:[ 8 10 7 -1 ] //: joint g19 (w15) @(109, 233) /w:[ 2 16 1 -1 ] led g32 (.I(w13)); //: @(276,-20) /sn:0 /w:[ 0 ] /type:0 //: supply0 g6 (w0) @(326,31) /sn:0 /w:[ 5 ] //: joint g38 (Q1) @(219, 160) /w:[ -1 2 4 1 ] concat g9 (.I0(Q1), .I1(w8), .I2(w11), .I3(w18), .Z(w17)); //: @(217,357) /sn:0 /w:[ 0 5 5 5 0 ] /dr:0 rom g7 (.A(w17), .D(w9), .OE(w14)); //: @(273,358) /sn:0 /delay:" 1 1" /w:[ 1 0 0 ] /mem:"/home/patrice/03-ktgate/proj2/compteur_4bits.mem" led g15 (.I(Q1)); //: @(475,48) /sn:0 /w:[ 3 ] /type:0 led g20 (.I(w6)); //: @(222,-21) /sn:0 /w:[ 0 ] /type:0 led g31 (.I(D0)); //: @(197,-21) /sn:0 /w:[ 3 ] /type:0 //: joint g39 (w8) @(288, 160) /w:[ -1 2 1 4 ] //: joint g48 (w0) @(262, 89) /w:[ 7 -1 8 10 ] //: switch g25 (w3) @(-68,237) /sn:0 /w:[ 0 ] /st:0 led g17 (.I(w18)); //: @(554,49) /sn:0 /w:[ 3 ] /type:0 //: joint g29 (w1) @(252, 75) /w:[ 4 -1 3 10 ] //: comment g52 /dolink:0 /link:"" @(484,437) /sn:0 //: /line:"d0=/Q0" //: /line:"d1= Q0 XOR Q1 = Q0./Q1+/Q0.Q1" //: /line:"d2= Q0.Q1./Q2+Q2.(/Q0+/Q1)" //: /line:"d3= Q0.Q1.Q2.Q3+Q3/(Q0.Q1.Q2)" //: /end //: switch g5 (w1) @(69,75) /sn:0 /w:[ 0 ] /st:1 led g14 (.I(w15)); //: @(108,24) /sn:0 /w:[ 17 ] /type:0 //: joint g24 (w15) @(186, 206) /w:[ 4 14 -1 3 ] //: switch g21 (w12) @(-68,166) /sn:0 /w:[ 1 ] /st:1 //: joint g36 (w7) @(302, 165) /w:[ 2 1 -1 4 ] clock g23 (.Z(w10)); //: @(-18,110) /sn:0 /w:[ 0 ] /omega:100 /phi:0 /duty:50 //: joint g41 (w18) @(440, 160) /w:[ 2 -1 1 4 ] //: joint g40 (w11) @(356, 160) /w:[ -1 2 1 4 ] mux g22 (.I0(w12), .I1(w10), .S(w3), .Z(w15)); //: @(62,198) /sn:0 /w:[ 0 1 1 0 ] //: joint g26 (w15) @(257, 206) /w:[ 6 12 5 -1 ] ff g0 (.Q(Q1), ._Q(w2), .D(D0), .EN(w0), .CLR(w1), .CK(w15)); //: @(186,165) /sn:0 /w:[ 5 1 0 9 13 15 ] //: joint g35 (w6) @(234, 166) /w:[ 2 1 -1 4 ] tran g12(.Z(w13), .I(w9[3])); //: @(404,355) /sn:0 /R:1 /w:[ 5 7 8 ] /ss:0 led g18 (.I(w11)); //: @(529,49) /sn:0 /w:[ 3 ] /type:0 //: comment g30 /dolink:0 /link:"" @(-90,257) /sn:0 //: /line:"step/step" //: /end led g33 (.I(w7)); //: @(251,-20) /sn:0 /w:[ 0 ] /type:0 //: joint g49 (w0) @(335, 89) /w:[ 1 -1 2 12 ] endmodule